<?php
namespace app\index\controller;
use app\index\controller\Base;
class Lists extends Base {
    
    public function index(){
        $firstCatIds=[];
       //首先需要 一级栏目 
        $categorys=model("Category")->getNormalCategoryByParentId();
         foreach($categorys as $category){
             $firstCatIds[]=$category->id;
          }
         $id=input('id',0,'intval'); //默认为0  如果是model层传过去的值 id=$vo.id 如果不是就从model层想法给它传category_id过去
         //$id=0 是一级,  二级    一级也好,二级也罢，都通过model层取值传过去相应的category_id值
         $data=[];
         if(in_array($id,$firstCatIds)){
             //todo
             $categoryParentId=$id;
             $data['category_id']=$id; //服务deal
         }else if($id){//二级
                   $category=model("Category")->get($id);//获取类
                   if(!$category || $category->status!=1){
                        $this->error("数据非法");
                   }
                 $categoryParentId=$category->parent_id;        //重要参数 根据parent_id来无差别的调用deal数据表中的数据
                 $data['se_category_id']=$id;
         }else{ //0
                  $categoryParentId=0;
         }
            $sedcategorys=[];
         //获取一级分类所有下面的所有子类
         if($categoryParentId){
              $sedcategorys=model("Category")->getNormalCategoryByParentId($categoryParentId);
           }
          //根据页面传值过来的值进行排序  model(deal)来进行排序
          $orders=[];
          $order_sales=input('order_sales','');//按照销量 排序
          $order_price=input('order_price','');//按照价格排序
          $order_time= input('order_time','');//按照发布时间排序
          if(!empty($order_sales)){
              $orderflag='order_sales';
              $orders['order_sales']=$order_sales;
          }elseif(!empty($order_price)){
              $orderflag='order_price';
              $orders['order_price']=$order_price;
          }elseif(!empty($order_time)){
              $orderflag='order_time';
              $orders['order_time']=$order_time;
          }else{//默认为空
               $orderflag="";
          }
          // 城市city_id 必须填上
          //
          $data['city_id']=$this->city->id;
          //根据$data['category_id'] 以及$data['se_category_id'] 或$orders来对商品遍历取值
          $deals=model("Deal")->getDealByconditions($data,$orders);
          
        return $this->fetch("",[
           "id"=>$id,
           "categoryParentId"=>$categoryParentId,
          "categorys"=>$categorys, 
          "sedcategorys"=>$sedcategorys,
           "orderflag"=>$orderflag,
            'deals'=>$deals,
        ]);
    }
}
